import { createStore } from "vuex";

export default createStore({
  state: {
  cartList:[],  //购物车初始为空
  orderList:[],  //订单列表数据
  orderListed:[],  //订单列表数据后

  userAddress:[
    {
      id:'1001',
      name:'大D',
      tel:'14702583690',
      province:'广东省',
      city:'广州市',
      county:'天河区',
      addressDetail:'阿拉法克奥卡福艾瑞克某某大厦9999楼',
      isDefault: true,
      areaCode: '110101'
    },
    {
      id:'1002',
      name:'小D',
      tel:'17425632589',
      province:'广东省',
      city:'广州市',
      county:'白云区',
      addressDetail:'阿拉法克奥卡福艾瑞克某某大厦88888楼',
      isDefault: false,
      areaCode: '110101'
    },
  ],
  edit:true
  },
  mutations:{
    //添加购物车
    ADDCART(state,value){
      state.cartList = value
    },
    // 结算按钮
    PAY(state,value){
      state.orderList = value
    },
    // 删除
    DELETE(state,value){
      state.cartList = value
    },
    // 生成订单
    UPDATEORDER(state){
      state.orderListed = state.orderListed.concat(state.orderList)
    },
    // 编辑按钮
    EDIT(state,value){
      if(value === 'delete'){
        state.edit = true
      } else {
        state.edit = !state.edit
      }
    },
    // 新增地址
    ADDADDRESS(state,value){
      state.userAddress.map((item)=>{
        if(value.isDefault){
          item.isDefault = false
        }
      })
      state.userAddress.push(value)
    },
    // 编辑按钮
    CHANGEADDRESS(state,value){
      state.userAddress = state.userAddress.map((item)=>{
        if(value.isDefault){
          item.isDefault = false
        }
        return item.id === value.id?value:item
      })
    },
    // 地址删除
    DELETEADDRESS(state,value){
      state.userAddress = state.userAddress.filter((item)=>{
        return !(value.id === item.id)
      })
      if(value.isDefault&&state.userAddress.length){
        state.userAddress[0].isDefault=true
      }
    }
  },
  actions:{},
})